10 SYS65517:IFPEEK(781)=40THENMT$="":GOTO30 20 MT$="" 30 GOSUB1580:IFBR$="R"THEN450 40 FORS1=K1TONF:GOSUB930 50 GET#FP,A$:A$=MID$(A$+C0$,K1,K1):ZT=ST 60 BK=BK+K1:PRINT UP$;TAB(17);BK:R$="" 70 GETI$:IFI$<>""GOTO330 80 LB$=A$:LB=ASC(LB$):NE=K1 90 IFZTTHENGOSUB150:GOSUB220:GOTO250 100 GET#FP,A$:A$=MID$(A$+C0$,K1,K1):ZT=ST 110 IFLEN(R$)>CMTHENGOSUB150:GOSUB220:GOTO60 120 IFLB$<>A$THEN140 130 IFNE<250THENNE=NE+K1:GOTO90 140 GOSUB150:GOTO80 150 IFNE>K1GOTO190 160 IFLB"Q"GOTO370 360 CLOSEFP:AN$="A":GOSUB410:GOTO2480 370 PRINT UP$ " " UP$ 380 PRINT CHR$(18) " P TO PAUSE" CHR$(146) UP$:GOTO80 390 PRINT#1,"024F";MID$(NA$+SP$,K1,16);MID$(TY$,K1,K1);MID$(LN$+SP$,K1,K3); 400 NB=NB+24:RETURN 410 PRINT#1,"005E";AN$:NB=NB+8:PRINT#1,C0$;C0$;C0$;:CLOSE1:RETURN 420 EN=LEN(DT$) 430 IFASC(MID$(DT$,EN,1))<>160THENRETURN 440 DT$=LEFT$(DT$,EN-K1):GOTO420 450 GOSUB1110 460 FOR S1=K1TONF 470 BK=K0:NA$=NA$(S1):TY$=TY$(S1) 480 OPEN 1,1,0:NB=NB+300:GOSUB840 490 FM$="":PRINT:PRINT UP$ CHR$(18) " FOUND" CHR$(146) " "; 500 IFRC$<>"F"THENCLOSE1:GOTO480 510 FORX=K1TO16:GET#1,I$:FM$=FM$+I$:NEXT 520 PRINT FM$:GET#1,A$,A$,A$,A$ 530 IFFM$=NA$GOTO580 540 GOSUB840:IFRC$="N"THENCLOSE1:GOSUB1520:GOTO480 550 NB=NB+LN:FORX=K1TOLN-K4:GET#K1,A$:NEXT:GOSUB840 560 IFRC$="D"GOTO550 570 CLOSE1:GOTO480 580 X=LEN(NA$):IFMID$(NA$,X,K1)=" "THENNA$=MID$(NA$,K1,X-K1):GOTO580 590 OPENFP,8,FP,"@0:"+NA$+CO$+TY$+",W" 600 GOSUB840:IFRC$="D"GOTO640 610 IFRC$="E"GOTO760 620 IFRC$="N"THENGOSUB1510:GOTO470 630 PRINT " EXPECTED D OR E":GOTO2480 640 BK=BK+K1:PRINT UP$;TAB(24);BK 650 L=0 660 L=L+K1:IFL>LN-K4GOTO600 670 GET#1,A$:A$=MID$(A$+C0$,K1,K1):A=ASC(A$) 680 IFA<230THENPRINT#FP,A$;:GOTO660 690 IFA=230THENGET#1,A$:L=L+K1:A$=MID$(A$+C0$,K1,K1):PRINT#FP,A$;:GOTO660 700 IFA=231THEN730 710 IFA=232 OR A=245 THEN750 720 PRINT#FP,A$;:GOTO660 730 GET#1,A$,A1$:L=L+K2:A1$=MID$(A1$+C0$,K1,K1) 740 FORX=K1TOASC(A$):PRINT#FP,A1$;:NEXT:GOTO660 750 GET#1,A1$:L=L+K1:FORX=K1TOASC(A1$):PRINT#FP,CHR$(A-200);:NEXT:GOTO660 760 GOSUB2490:CLOSE1:CLOSE FP 770 IF A$<>"A"GOTO820 780 PRINT " FILE'" NA$ "' IS INCOMPLETE 790 [153]"Q TO QUIT, SPACE TO CONTINUE 800 GETA$:IFA$=""GOTO800 810 IFA$="Q"GOTO2480 820 NEXT S1:GOSUB860 830 FORSL=K1TO20:NEXT:GOTO2480 840 GET#1,L1$,L2$,L3$,RC$ 850 LN=VAL(L1$+L2$+L3$):NB=NB+LN:RETURN 860 TT=VAL(MID$(TI$,K1,K2))*3600+VAL(MID$(TI$,K3,K2))*60 870 TT=TT+INT(NB/25):HH=INT(TT/3600) 880 MM=INT((TT-HH*3600)/60) 890 HH$=MID$(STR$(HH),2):IFLEN(HH$)<2THENHH$="0"+HH$ 900 MM$=MID$(STR$(MM),2):IFLEN(MM$)<2THENMM$="0"+MM$ 910 TI$=HH$+MM$+"00":PRINT "ESTIMATED TIME=";TI$ 920 RETURN 930 NA$=NA$(S1):TY$=TY$(S1) 940 IFNB+LN(S1)*(BD+5)+BH"Y"GOTO1200 1140 ND$="":PRINT " DISK NAME"; 1150 INPUTND$:IFND$=""GOTO1200 1160 ID$="":PRINT " DISK ID "; 1170 INPUTID$:IFID$=""GOTO1200 1180 PRINT#15,"N0:";ND$;",";ID$ 1190 GOSUB 2490:IFE1THEN2490 1200 PRINT " OPEN DTB.ID.FILE" 1210 OPEN 1,1,0,"DTB.ID.FILE" 1220 NB=NB+300 1230 GOSUB840 1240 GET#1,A$ 1250 IFA$<>VN$ THENPRINT " VERSION ERROR":GOTO2480 1260 PRINT "[147] FROM DISK:"; 1270 FORX=1TO20:GET#1,A$:PRINT A$;:NEXT 1280 PRINT:PRINT "BACKED UP ON DATE:"; 1290 FORX=1TO8 :GET#1,A$:PRINT A$;:NEXT 1300 PRINT " TIME:"; 1310 FORX=1TO6 :GET#1,A$:PRINT A$;:NEXT 1320 PRINT 1330 NF=0 1340 GOSUB840 1350 IFRC$="F" THEN1380 1360 IFRC$="E" THEN CLOSE1:RETURN 1370 PRINT " REC CD ERROR":GOTO2480 1380 NA$="":FORX=1TO16:GET#1,A$:PRINTA$; 1390 NA$=NA$+A$:NEXT 1400 GET#1,TY$:PRINT" "TY$" "; 1410 GET#1,A$,A2$,A3$:PRINT A$;A2$;A3$; 1420 PRINT:IFAF$="Y"THEN1480 1430 PRINT UP$:PRINT"BKUP Y OR N"; 1440 YN$="":INPUT YN$ 1450 IFMID$(YN$+"Y",K1,K1)="Y"GOTO1480 1460 IF YN$="N"GOTO1340 1470 GOTO1430 1480 NF=NF+K1 1490 NA$(NF)=NA$:TY$(NF)=TY$:GOTO1340 1500 RETURN 1510 CLOSEFP:CLOSE1 1520 PRINT" LOAD CONTINUATION TAPE" 1530 PRINT" TYPE Q TO QUIT" 1540 PRINT" SPACE TO CONTINUE" 1550 GETA$:IFA$=""GOTO1550 1560 IFA$="Q"GOTO2480 1570 GOSUB860:NB=0:RETURN 1580 DIM LN(150),NA$(150),T$(4),TY$(150) 1590 BH=300:BD=256:BK=0:BM=840:BO=53280:CM=250:CS=230:DA=45:DIR=8:FP=5 1600 K0=0:K1=1:K2=2:K3=3:K4=4 1610 NB=0:NC=0:NE=0:NF=0:PS=8000:SP=32:TB=0:TM=60 1620 AF$="":AN$="N":BR$="":FORX=1TO40:BS$=BS$+CHR$(157):NEXT 1630 C0$=CHR$(0):CB$="":CO$=",":CS$=CHR$(232) 1640 DA$="":DN$="":FM$="":RC$="":SP$=" ":SP$=SP$+SP$+SP$:UP$=CHR$(145) 1650 VN$="2" 1660 OPEN15,8,15:POKE BO,0 1670 PRINTMT$:PRINTCHR$(147):PRINT" DISK TO TAPE BACKUP" 1680 T$(K0)="DEL":T$(1)="SEQ":T$(2)="PRG":T$(3)="USR":T$(4)="REL" 1690 PRINT"BACKUP OR RESTORE":INPUT"(B OR R)";BR$ 1700 BR$=MID$(BR$+" ",1,1) 1710 IF BR$<>"B" AND BR$<>"R" GOTO2480 1720 PRINT"PROCESS ALL FILES":INPUT"(Y OR N)";AF$ 1730 AF$=MID$(AF$+"Y",1,1) 1740 IF AF$<>"Y" AND AF$<>"N" GOTO2480 1750 IF BR$="R"THEN1890 1760 PRINT "TAPE SIZE (MIN) ";TM;MID$(BS$,1,LEN(STR$(TM))+2); 1770 INPUT TM$:IFTM$=""THENTM$=STR$(TM) 1780 TM=VAL(TM$):TB=TM*BM 1790 OPEN 3,8,3,"0:SYS DATE,S,R" 1800 INPUT#15,E1,E2$,E3,E4 1810 IF E1 THEN D$="00/00/00":GOTO1830 1820 INPUT#3,D$ 1830 CLOSE3 1840 PRINT " MM/DD/YY "; 1850 INPUT DA$:IF DA$="" THEN DA$=D$ 1860 IF D$=DA$ GOTO1890 1870 DA$=MID$(DA$+" ",1,8):OPEN 3,8,3,"@0:SYS DATE,S,W": 1880 GOSUB2490:PRINT#3,DA$:CLOSE3 1890 T$=TI$ 1900 PRINT " HHMM ? "T$;MID$(BS$,1,LEN(T$)+2); 1910 INPUT T$:TI$=MID$(T$+"000000",1,6) 1920 IF BR$="R"THENRETURN 1930 PRINT"[147] READING DIRECTORY":OPEN DIR,8,DIR,"$" 1940 FOR L=K1 TO 142:GET#DIR,A$:NEXT 1950 DN$="":FORL=K1TO16:GET#DIR,A$ 1960 DN$=DN$+A$:NEXT:PRINT "[147] DISK:"DN$; 1970 DT$=DN$:GOSUB420:DN$=DT$ 1980 GET#DIR,A$,A$,I1$,I2$,A$,O1$,O2$ 1990 PRINT" ID:";I1$;I2$;:PRINT" OS:";O1$;O2$"" 2000 FOR L=K1TO89:GET#DIR,A$:NEXT 2010 NF=0 2020 RB=DIR:R$="" 2030 FORR=K1TO254:GET#RB,A$:R$=R$+MID$(A$+C0$,K1,K1):NEXT:ZS=ST 2040 B=K0 2050 PRINT"[147] DISK:"DN$; 2060 PRINTTAB(23)"ID:";I1$;I2$;:PRINT" OS:";O1$;O2$"" 2070 FOR P=K1 TO 8 2080 T=ASC(MID$(R$,B+K1)):IFT=K0THENT=128 2090 L=ASC(MID$(R$,B+29)):H=ASC(MID$(R$,B+30)) 2100 L=(L+256*H):IFL=K0THEN2200 2110 N$=MID$(R$,B+K4,16) 2120 TY$=T$(T-128):IF TY$="DEL"THEN2200 2130 DT$=N$:GOSUB420:N$=DT$ 2140 PRINT L;TAB(4);TY$;" ";N$ 2150 IFAF$="Y" THEN PRINT:GOTO2180 2160 PRINT" Y/N ? Y";MID$(BS$,1,3); 2170 YN$="":INPUTYN$:IFYN$="N"GOTO2200 2180 NF=NF+K1:NA$(NF)=N$ 2190 TY$(NF)=MID$(TY$,K1,K1):LN(NF)=L 2200 B=B+32:NEXT P:PRINT" PLEASE WAIT..." 2210 IF ZS=K0 THEN2020 2220 CLOSE DIR 2230 IF NFNA$(S2)THENSM=S2 2280 NEXTS2 2290 IFSM=S1THEN2330 2300 NA$(K0)=NA$(S1):NA$(S1)=NA$(SM):NA$(SM)=NA$(0) 2310 TY$(K0)=TY$(S1):TY$(S1)=TY$(SM):TY$(SM)=TY$(0) 2320 LN(K0)=LN(S1):LN(S1)=LN(SM):LN(SM)=LN(0) 2330 PRINT " " NA$(S1) 2340 NEXTS1:PRINT" "NA$(NF):PRINT 2350 GOSUB 2520:NB=NB+PS 2360 OPEN 1,1,1,"DTB.ID.FILE" 2370 NB=NB+BH+39 2380 PRINT#1,"039V";VN$; 2390 PRINT#1,MID$(DN$+SP$,K1,20); 2400 PRINT#1,MID$(DA$+SP$,K1,8);TI$; 2410 FORS1=K1TONF 2420 LN$=MID$(STR$(LN(S1)),K2) 2430 NA$=NA$(S1):TY$=TY$(S1) 2440 GOSUB390 2450 NEXTS1:GOSUB 410 2460 IF NF